Telegram Group & Telegram Channel
πŸ‘£ Как ΠΎΠ΄Π½ΠΎΠΉ Go‑слуТбС Π»Π΅Π³ΠΊΠΎ Π²Ρ‹Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ 200000 RPS Π½Π° ΠΎΠ΄Π½ΠΎΠΉ машинС

Π’ свСТСй ΡΡ‚Π°Ρ‚ΡŒΠ΅ Никиты Π‘ΡƒΡ€ΠΎΠ²Π° разбираСтся практичСский кСйс: Π±Π΅Π· ΡˆΠ°Ρ€Π΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ, Π±Π΅Π· дСсятков Ρ€Π΅ΠΏΠ»ΠΈΠΊ ΠΈ Π±Π΅Π· ΠΌΠ°Π³ΠΈΠΈ ΠΎΠ±Π»Π°ΠΊΠ° β€” всСго Π·Π° счёт ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΉ Go‑сСрвис Π½Π° ΠΎΠ΄Π½ΠΎΠΌ MacBook Pro M3 достигаСт 200000 запросов Π² сСкунду с ΠΌΠ΅Π΄ΠΈΠ°Π½Π½Ρ‹ΠΌ P50 < 1 мс. Π’ΠΎΡ‚ Π³Π»Π°Π²Π½Ρ‹Π΅ ΠΏΡ€ΠΈΡ‘ΠΌΡ‹:

1⃣ Π‘Π²ΠΎΠ΄ΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρƒ «горячСго» ΠΏΡƒΡ‚ΠΈ ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΡƒ
- Π‘татичСский ΠΏΡ€Π΅ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΉ Ρ„ΠΈΠ΄ β€” ΠΈΠ· памяти, Π±Π΅Π· Π‘Π”/API.
- ΠΠΎΠ»ΡŒ Π°Π»Π»ΠΎΠΊΠ°Ρ†ΠΈΠΉ β€” Π½ΠΈΠΊΠ°ΠΊΠΈΡ… new/make Π² горячСм ΠΏΡƒΡ‚ΠΈ.

2⃣ net/http β†’ fasthttp
- Π‘ыстрСС TCP, Π±ΡƒΡ„Π΅Ρ€Ρ‹, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ.
- Γ—8–10 прирост RPS.

3⃣ Pool ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² + явный сброс
- sync.Pool для структур.
- ΠžΡ‚ΠΊΠ°Π· ΠΎΡ‚ defer.

4⃣ Tюнинг GOMAXPROCS + GOGC
- GOMAXPROCS= ядра.
- GOGC=200–300.

5⃣ ΠŸΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ pprof benchstat

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ΠΎΠ΄ΠΈΠ½ инстанс Π΄Π΅Ρ€ΠΆΠΈΡ‚ 200000 RPS с P50 < 1мс ΠΈ P99 < 2мс.

πŸ”— Полная ΡΡ‚Π°Ρ‚ΡŒΡ: https://medium.com/@nikitaburov/how-to-easily-handle-200k-rps-with-golang-8b62967a01dd
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/golang_books/960
Create:
Last Update:

πŸ‘£ Как ΠΎΠ΄Π½ΠΎΠΉ Go‑слуТбС Π»Π΅Π³ΠΊΠΎ Π²Ρ‹Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ 200000 RPS Π½Π° ΠΎΠ΄Π½ΠΎΠΉ машинС

Π’ свСТСй ΡΡ‚Π°Ρ‚ΡŒΠ΅ Никиты Π‘ΡƒΡ€ΠΎΠ²Π° разбираСтся практичСский кСйс: Π±Π΅Π· ΡˆΠ°Ρ€Π΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ, Π±Π΅Π· дСсятков Ρ€Π΅ΠΏΠ»ΠΈΠΊ ΠΈ Π±Π΅Π· ΠΌΠ°Π³ΠΈΠΈ ΠΎΠ±Π»Π°ΠΊΠ° β€” всСго Π·Π° счёт ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΉ Go‑сСрвис Π½Π° ΠΎΠ΄Π½ΠΎΠΌ MacBook Pro M3 достигаСт 200000 запросов Π² сСкунду с ΠΌΠ΅Π΄ΠΈΠ°Π½Π½Ρ‹ΠΌ P50 < 1 мс. Π’ΠΎΡ‚ Π³Π»Π°Π²Π½Ρ‹Π΅ ΠΏΡ€ΠΈΡ‘ΠΌΡ‹:

1⃣ Π‘Π²ΠΎΠ΄ΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρƒ «горячСго» ΠΏΡƒΡ‚ΠΈ ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΡƒ
- Π‘татичСский ΠΏΡ€Π΅ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΉ Ρ„ΠΈΠ΄ β€” ΠΈΠ· памяти, Π±Π΅Π· Π‘Π”/API.
- ΠΠΎΠ»ΡŒ Π°Π»Π»ΠΎΠΊΠ°Ρ†ΠΈΠΉ β€” Π½ΠΈΠΊΠ°ΠΊΠΈΡ… new/make Π² горячСм ΠΏΡƒΡ‚ΠΈ.

2⃣ net/http β†’ fasthttp
- Π‘ыстрСС TCP, Π±ΡƒΡ„Π΅Ρ€Ρ‹, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ.
- Γ—8–10 прирост RPS.

3⃣ Pool ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² + явный сброс
- sync.Pool для структур.
- ΠžΡ‚ΠΊΠ°Π· ΠΎΡ‚ defer.

4⃣ Tюнинг GOMAXPROCS + GOGC
- GOMAXPROCS= ядра.
- GOGC=200–300.

5⃣ ΠŸΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ pprof benchstat

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ΠΎΠ΄ΠΈΠ½ инстанс Π΄Π΅Ρ€ΠΆΠΈΡ‚ 200000 RPS с P50 < 1мс ΠΈ P99 < 2мс.

πŸ”— Полная ΡΡ‚Π°Ρ‚ΡŒΡ: https://medium.com/@nikitaburov/how-to-easily-handle-200k-rps-with-golang-8b62967a01dd

BY Golang Books




Share with your friend now:
tg-me.com/golang_books/960

View MORE
Open in Telegram


Golang Books Telegram | DID YOU KNOW?

Date: |

A Telegram spokesman declined to comment on the bond issue or the amount of the debt the company has due. The spokesman said Telegram’s equipment and bandwidth costs are growing because it has consistently posted more than 40% year-to-year growth in users.

The seemingly negative pandemic effects and resource/product shortages are encouraging and allowing organizations to innovate and change.The news of cash-rich organizations getting ready for the post-Covid growth economy is a sign of more than capital spending plans. Cash provides a cushion for risk-taking and a tool for growth.

Golang Books from ar


Telegram Golang Books
FROM USA